Git の一般的な落とし穴を回避します: ベスト プラクティスと回復手順。
序論。
1. メインブランチへの直接コミット。
問題点:
メインブランチに直接コミットすると、プロジェクトの安定性が損なわれる可能性があります。メインブランチ(master
やmain
と呼ばれることが多い)は、プロジェクトの最も安定したバージョンを表すべきで、通常は本番環境で使用されます。
回避策:
作業の大小に関わらず、必ず新しいブランチを作成してください。これによりメインブランチは清潔で安定したままです。 作業中の機能や修正に関連した簡単なブランチ名の規則を使用してください(例: feature/add-login
やbugfix/resolve-login-issue
)。
フィーチャーブランチの作成と使用手順:
git checkout -b feature/add-login # Create and switch to a new branch # Make changes and commit them git add . git commit -m "Add login feature" # Push the feature branch to the remote repository git push -u origin feature/add-login
2. ブランチを効果的に使用していない。
問題点:
ブランチの管理が不適切だと、混乱が生じたり、リポジトリが散らかったりして、機能や修正の追跡が困難になります。
回避策:
特定の機能、バグ修正、実験ごとにブランチを使用してください。 完了したブランチはメインブランチにマージし、ローカルとリモートの両方のリポジトリから削除して、プロジェクトを整理しましょう。
ブランチのマージ例:
git checkout main git pull origin main # Ensure the main branch is up-to-date git merge feature/add-login # Merge the feature branch into main git push origin main # Push the updated main branch git branch -d feature/add-login # Delete the local branch git push origin --delete feature/add-login # Delete the remote branch
3. 不適切なコミットからの復旧。
問題点:
時々、意図しないものをコミットしてしまったり、エラーを含んでしまうことがあります。
復旧方法: コミットがリモートリポジトリにプッシュされていない場合は、git reset
を使って取り消すことができます。
ローカルコミットを取り消す手順:
git log # Find the commit hash before the bad commit git reset --hard <previous_commit_hash> # Reset to the correct commit
- コミットがプッシュされている場合は、
git revert
を使って変更を取り消す新しいコミットを作成します。
プッシュ済みのコミットを取り消す手順:
git revert <bad_commit_hash> git commit -m "Revert changes from <bad_commit_hash>" git push origin main
4. マージコンフリクトの解決。
問題点:
マージコンフリクトは、Gitがマージされたブランチ間のコードの違いを自動的に解決できない場合に発生します。
復旧方法: Gitがコンフリクトを示しているファイルを手動で編集し、最終的なコードの見た目を決定します。 コンフリクトを解決した後、解決したファイルを追加し、コミットし、マージを続行します。
マージコンフリクトを解決する手順:
git merge feature/new-feature # If there are conflicts, Git will list the files # Open each file and make the necessary changes git add . git commit -m "Resolve merge conflicts" git push origin main
結論。